export const emptyNode = Object.create(null);

// =========== HTML 解析使用常量 ===========

export const HTML_NODE_TYPE = {
    TAG: 1,
    COMMENT: 2,
    TEXT: 3
};

export const HTML_TAG_STATUS = {
    OPEN: 'OPEN',
    CLOSE: 'CLOSE',
    SINGLE: 'SINGLE'
};

// =========== AST 解析使用常量 ===========

export const ATTR_TYPE = {
    ATTR: 'ATTR',
    EVENT: 'EVENT',
}

// ========== VNode 解析使用常量 ==========

export const VIRTUAL_NODE_TYPE = {
    ELEMENT: 1,
    COMMENT: 2,
    TEXT: 3
};

// export const AST_RENDER_TYPE = {
//     IF: 1,
//     SHOW: 2,
//     STATIC: 3,
//     FOR: 4,
//     SLOT: 5,
// };
//
// export const AST_DIRECTIVE = {
//     IF: 'v-if',
//     ELSEIF: 'v-else-if',
//     ELSE: 'v-else',
//     SHOW: 'v-show',
//     FOR: 'v-for',
//     SLOT: 'v-slot',
//     STATIC: 'static',
// };

export const HTML_TAG_MAP = {
    // 基础
    html: true,
    head: true,
    title: true,
    body: true,
    h1: true,
    h2: true,
    h3: true,
    h4: true,
    h5: true,
    h6: true,
    p: true,
    br: true,
    hr: true,

    // 格式化
    // acronym: true,
    abbr: true,
    address: true,
    b: true,
    bdi: true,
    bdo: true,
    // big: true,
    blockquote: true,
    // center: true,
    cite: true,
    code: true,
    del: true,
    dfn: true,
    em: true,
    font: true,
    i: true,
    ins: true,
    kbd: true,
    mark: true,
    meter: true,
    pre: true,
    progress: true,
    q: true,
    rp: true,
    rt: true,
    ruby: true,
    s: true,
    samp: true,
    small: true,
    // strike: true,
    strong: true,
    sup: true,
    sub: true,
    // template: true,
    time: true,
    // tt: true,
    u: true,
    var: true,
    wbr: true,

    // 表单和输入
    form: true,
    input: true,
    textarea: true,
    button: true,
    select: true,
    optgroup: true,
    option: true,
    label: true,
    fieldset: true,
    legend: true,
    isindex: true,
    datalist: true,
    keygen: true,
    output: true,

    // 框架
    frame: true,
    frameset: true,
    noframes: true,
    iframe: true,

    // 图像
    img: true,
    map: true,
    area: true,
    canvas: true,
    figcaption: true,
    figure: true,
    svg: true,

    // 音频/视频
    audio: true,
    source: true,
    track: true,
    video: true,

    // 链接
    a: true,
    link: true,
    nav: true,

    // 列表
    ul: true,
    ol: true,
    li: true,
    dir: true,
    dl: true,
    dt: true,
    dd: true,
    menu: true,
    menuitem: true,
    command: true,

    // 表格
    table: true,
    caption: true,
    th: true,
    tr: true,
    td: true,
    thead: true,
    tbody: true,
    tfoot: true,
    col: true,
    colgroup: true,

    // 样式和语义
    style: true,
    div: true,
    span: true,
    header: true,
    footer: true,
    main: true,
    section: true,
    article: true,
    aside: true,
    details: true,
    dialog: true,
    summary: true,
    data: true,

    // 元信息
    meta: true,
    base: true,
    basefont: true,

    // 编程
    script: true,
    noscript: true,
    applet: true,
    embed: true,
    object: true,
    param: true
};
